package com.google.code.fluentjoiner;

import com.google.code.fluentjoiner.SupplierBuilder;

public class SupplierBuilderWithExpectedResult<T, U extends SupplierBuilder<T>>
{
    private final U supplierBuilder;
    private final T expectedResult;

    public static <T, U extends SupplierBuilder<T>> SupplierBuilderWithExpectedResult<T, U> create(final U supplierBuilder, final T expectedResult)
    {
        return new SupplierBuilderWithExpectedResult(supplierBuilder, expectedResult);
    }

    protected SupplierBuilderWithExpectedResult(final U supplierBuilder, final T expectedResult)
    {
        this.supplierBuilder = supplierBuilder;
        this.expectedResult = expectedResult;
    }

    /**
     * @return the supplierBuilder
     */
    public U getSupplierBuilder()
    {
        return supplierBuilder;
    }

    /**
     * @return the expectedResult
     */
    public T getExpectedResult()
    {
        return expectedResult;
    }
}
